In a cloud computing environment, computing is delivered as a service rather than a product, whereby shared resources, software and information are provided to computers and other devices as a metered service over a network, such as the Internet. In such an environment, computation, software, data access and storage services are provided to users that do not require knowledge of the physical location and configuration of the system that delivers the services.
In a virtualized computer environment, such as may be implemented in a cloud computing node of the cloud computing environment, the virtualized computer environment includes a virtual operating system. The virtual operating system includes a common base portion and separate user portions that all run on a physical computer. The physical computer is referred to as a host. The common base portion may be referred to as a hypervisor and each user portion may be called a guest. Each guest is a logical partition of physical resources of the computer. A guest operating system runs on each guest, and the guest appears to the guest operating system as a real computer. Each guest operating system may host one or more virtual machines.
Currently, one of the most common guest configurations is a single core or a sub-core CPU allocation in order to achieve a high density consolidation. Since only a single or a sub-core CPU allocation is available, only a single thread (i.e., a stream of instructions) can be executed at a given time.
Multithreading refers to having multiple threads or multiple streams of instructions existing within the context of a single process. These threads share the process' resources but are able to be executed independently. As a result, if the operating system and middleware tiers could be initialized using a multithreaded startup, then the initialization of the operating system and middleware tiers could be performed more quickly thereby reducing the deployment time for the virtual guest instance and the virtual machine. However, multithreading cannot currently be achieved since only a single or a sub-core CPU allocation is available. Hence, the deployment time for the virtual guest instances and the virtual machines are significantly longer than if the operating system and middleware tiers could be initialized using a multithreaded startup.